// 812. 最大三角形面积
// 给定包含多个点的集合，从其中取三个点组成三角形，
// 返回能组成的最大三角形的面积。

// 示例:
// 输入: points = [[0,0],[0,1],[1,0],[0,2],[2,0]]
// 输出: 2
// 解释: 
// 这五个点如下图所示。组成的橙色三角形是最大的，面积为2。

/**
 * 思路，
 * 三个点计算出三个梯形，上下合并的大梯形-小梯形=三角形面积
 * 
 * @param {*} points 
 */

/**
 * @param {number[][]} points
 * @return {number}
 */
 var largestTriangleArea = function(points) {

    let ponint1 = [];
    let ponint2 = [];
    let ponint3 = [];
    let res = [];
    let N = points.length;
    for(let i=0; i < N-2;  i++){
        for(let j = i+1; j < N-1; j++ ){
            for(let k = j+1 ; k < N ; k++){
                ponint1 = points[i];
                ponint2 = points[j];
                ponint3 = points[k];
                let x1 = ponint1[0], y1 =ponint1[1];
                let x2 = ponint2[0], y2 =ponint2[1];
                let x3 = ponint3[0], y3 =ponint3[1];
                res.push( (0.5 * Math.abs(x1 * (y2 - y3) + x2 * (y3 - y1) + x3 * (y1 - y2))));
            }
        }
    }
    // return Math.max(res);
    return res.sort().reverse()[0]
};